Load Data

library(gdata)
dataset <- read.delim("raw_data/Figure2C.txt", stringsAsFactors = FALSE)

dataset$genotype <- factor(gsub(" ","",dataset$genotype))
dataset$experiment <- factor(rep(paste0("exp", 1:(length(dataset$genotype)/length(levels(dataset$genotype)))), each= length(levels(dataset$genotype))))

dataset$UID <- factor(paste(dataset$experiment, dataset$genotype))

kable(dataset, row.names = F)
genotype NT X30.nM X300.nM X3000.nM X30000.nM experiment UID
WT 22.01058 14.99513 27.16387 40.27288 38.033250 exp1 exp1 WT
PARP1KO 24.99867 28.56546 32.87948 28.45025 28.545320 exp1 exp1 PARP1KO
ALC1KO 12.11620 39.52356 45.58298 61.03559 64.132780 exp1 exp1 ALC1KO
ALC1KOPARP1KO 12.52204 14.80034 19.89682 26.65366 20.054400 exp1 exp1 ALC1KOPARP1KO
WT 27.32625 31.84061 25.66672 29.00732 49.918700 exp2 exp2 WT
PARP1KO 98.22148 135.57802 114.79064 85.43817 67.054973 exp2 exp2 PARP1KO
ALC1KO 30.10425 120.77006 156.36509 152.38575 122.686347 exp2 exp2 ALC1KO
ALC1KOPARP1KO 38.10620 20.10778 23.18652 24.74054 6.578637 exp2 exp2 ALC1KOPARP1KO
WT 42.88251 45.64701 47.50491 52.09927 84.335243 exp3 exp3 WT
PARP1KO 51.33273 91.06651 36.30963 30.68799 83.422833 exp3 exp3 PARP1KO
ALC1KO 54.28341 141.70070 192.99382 189.15404 156.706603 exp3 exp3 ALC1KO
ALC1KOPARP1KO 27.83733 50.46166 32.71616 28.70225 33.340863 exp3 exp3 ALC1KOPARP1KO
library(reshape2)
# reshape to long format
dataset <- melt(dataset, variable.name = "treatment", value.name = "Outcome")

dataset$genotype <- relevel(dataset$genotype, ref = "WT")
dataset$UID <- relevel(dataset$UID, ref = "exp1 WT")


dataset$olaparib <- gsub("NT","1",dataset$treatment)
dataset$olaparib <- gsub("X|nM","",dataset$olaparib)
dataset$olaparib <- log10(as.integer(dataset$olaparib))



dataset$Offset <- NA
for(uid in levels(dataset$UID)){
        dataset$Offset[dataset$UID == uid] <- mean(dataset$Outcome[dataset$UID == uid])
}

dataset$NormOutcome <- dataset$Outcome / dataset$Offset



dataset$Offset2 <- NA
for(gid in levels(dataset$genotype)){
        dataset$Offset2[dataset$genotype == gid] <- mean(dataset$NormOutcome[dataset$genotype == gid & dataset$olaparib == 0])
}

dataset$NormOutcome2 <- dataset$NormOutcome / dataset$Offset2




kable(dataset, row.names = F)
genotype experiment UID treatment Outcome olaparib Offset NormOutcome Offset2 NormOutcome2
WT exp1 exp1 WT NT 22.010580 0.000000 28.49514 0.7724327 0.7978993 0.9680830
PARP1KO exp1 exp1 PARP1KO NT 24.998670 0.000000 28.68784 0.8714031 0.9093397 0.9582812
ALC1KO exp1 exp1 ALC1KO NT 12.116200 0.000000 44.47822 0.2724075 0.3000842 0.9077700
ALC1KOPARP1KO exp1 exp1 ALC1KOPARP1KO NT 12.522040 0.000000 18.78545 0.6665818 1.0537221 0.6325973
WT exp2 exp2 WT NT 27.326250 0.000000 32.75192 0.8343404 0.7978993 1.0456713
PARP1KO exp2 exp2 PARP1KO NT 98.221477 0.000000 100.21666 0.9800913 0.9093397 1.0778056
ALC1KO exp2 exp2 ALC1KO NT 30.104250 0.000000 116.46230 0.2584892 0.3000842 0.8613889
ALC1KOPARP1KO exp2 exp2 ALC1KOPARP1KO NT 38.106200 0.000000 22.54393 1.6903084 1.0537221 1.6041311
WT exp3 exp3 WT NT 42.882513 0.000000 54.49379 0.7869248 0.7978993 0.9862457
PARP1KO exp3 exp3 PARP1KO NT 51.332727 0.000000 58.56394 0.8765245 0.9093397 0.9639132
ALC1KO exp3 exp3 ALC1KO NT 54.283413 0.000000 146.96772 0.3693560 0.3000842 1.2308412
ALC1KOPARP1KO exp3 exp3 ALC1KOPARP1KO NT 27.837327 0.000000 34.61165 0.8042761 1.0537221 0.7632716
WT exp1 exp1 WT X30.nM 14.995130 1.477121 28.49514 0.5262346 0.7978993 0.6595251
PARP1KO exp1 exp1 PARP1KO X30.nM 28.565460 1.477121 28.68784 0.9957342 0.9093397 1.0950080
ALC1KO exp1 exp1 ALC1KO X30.nM 39.523560 1.477121 44.47822 0.8886048 0.3000842 2.9611843
ALC1KOPARP1KO exp1 exp1 ALC1KOPARP1KO X30.nM 14.800340 1.477121 18.78545 0.7878618 1.0537221 0.7476941
WT exp2 exp2 WT X30.nM 31.840607 1.477121 32.75192 0.9721753 0.7978993 1.2184185
PARP1KO exp2 exp2 PARP1KO X30.nM 135.578023 1.477121 100.21666 1.3528492 0.9093397 1.4877270
ALC1KO exp2 exp2 ALC1KO X30.nM 120.770057 1.477121 116.46230 1.0369884 0.3000842 3.4556577
ALC1KOPARP1KO exp2 exp2 ALC1KOPARP1KO X30.nM 20.107777 1.477121 22.54393 0.8919373 1.0537221 0.8464636
WT exp3 exp3 WT X30.nM 45.647010 1.477121 54.49379 0.8376553 0.7978993 1.0498258
PARP1KO exp3 exp3 PARP1KO X30.nM 91.066513 1.477121 58.56394 1.5549930 0.9093397 1.7100244
ALC1KO exp3 exp3 ALC1KO X30.nM 141.700703 1.477121 146.96772 0.9641621 0.3000842 3.2129714
ALC1KOPARP1KO exp3 exp3 ALC1KOPARP1KO X30.nM 50.461660 1.477121 34.61165 1.4579385 1.0537221 1.3836081
WT exp1 exp1 WT X300.nM 27.163870 2.477121 28.49514 0.9532807 0.7978993 1.1947382
PARP1KO exp1 exp1 PARP1KO X300.nM 32.879480 2.477121 28.68784 1.1461122 0.9093397 1.2603786
ALC1KO exp1 exp1 ALC1KO X300.nM 45.582980 2.477121 44.47822 1.0248382 0.3000842 3.4151682
ALC1KOPARP1KO exp1 exp1 ALC1KOPARP1KO X300.nM 19.896820 2.477121 18.78545 1.0591611 1.0537221 1.0051617
WT exp2 exp2 WT X300.nM 25.666717 2.477121 32.75192 0.7836706 0.7978993 0.9821673
PARP1KO exp2 exp2 PARP1KO X300.nM 114.790640 2.477121 100.21666 1.1454248 0.9093397 1.2596226
ALC1KO exp2 exp2 ALC1KO X300.nM 156.365093 2.477121 116.46230 1.3426241 0.3000842 4.4741573
ALC1KOPARP1KO exp2 exp2 ALC1KOPARP1KO X300.nM 23.186517 2.477121 22.54393 1.0285036 1.0537221 0.9760672
WT exp3 exp3 WT X300.nM 47.504913 2.477121 54.49379 0.8717491 0.7978993 1.0925553
PARP1KO exp3 exp3 PARP1KO X300.nM 36.309627 2.477121 58.56394 0.6199998 0.9093397 0.6818132
ALC1KO exp3 exp3 ALC1KO X300.nM 192.993817 2.477121 146.96772 1.3131715 0.3000842 4.3760095
ALC1KOPARP1KO exp3 exp3 ALC1KOPARP1KO X300.nM 32.716163 2.477121 34.61165 0.9452355 1.0537221 0.8970444
WT exp1 exp1 WT X3000.nM 40.272880 3.477121 28.49514 1.4133244 0.7978993 1.7713067
PARP1KO exp1 exp1 PARP1KO X3000.nM 28.450250 3.477121 28.68784 0.9917182 0.9093397 1.0905916
ALC1KO exp1 exp1 ALC1KO X3000.nM 61.035590 3.477121 44.47822 1.3722579 0.3000842 4.5729087
ALC1KOPARP1KO exp1 exp1 ALC1KOPARP1KO X3000.nM 26.653660 3.477121 18.78545 1.4188458 1.0537221 1.3465086
WT exp2 exp2 WT X3000.nM 29.007323 3.477121 32.75192 0.8856679 0.7978993 1.1099996
PARP1KO exp2 exp2 PARP1KO X3000.nM 85.438167 3.477121 100.21666 0.8525346 0.9093397 0.9375315
ALC1KO exp2 exp2 ALC1KO X3000.nM 152.385750 3.477121 116.46230 1.3084556 0.3000842 4.3602943
ALC1KOPARP1KO exp2 exp2 ALC1KOPARP1KO X3000.nM 24.740540 3.477121 22.54393 1.0974367 1.0537221 1.0414859
WT exp3 exp3 WT X3000.nM 52.099270 3.477121 54.49379 0.9560588 0.7978993 1.1982199
PARP1KO exp3 exp3 PARP1KO X3000.nM 30.687987 3.477121 58.56394 0.5240083 0.9093397 0.5762514
ALC1KO exp3 exp3 ALC1KO X3000.nM 189.154040 3.477121 146.96772 1.2870448 0.3000842 4.2889450
ALC1KOPARP1KO exp3 exp3 ALC1KOPARP1KO X3000.nM 28.702250 3.477121 34.61165 0.8292655 1.0537221 0.7869869
WT exp1 exp1 WT X30000.nM 38.033250 4.477121 28.49514 1.3347275 0.7978993 1.6728020
PARP1KO exp1 exp1 PARP1KO X30000.nM 28.545320 4.477121 28.68784 0.9950322 0.9093397 1.0942360
ALC1KO exp1 exp1 ALC1KO X30000.nM 64.132780 4.477121 44.47822 1.4418917 0.3000842 4.8049564
ALC1KOPARP1KO exp1 exp1 ALC1KOPARP1KO X30000.nM 20.054400 4.477121 18.78545 1.0675495 1.0537221 1.0131224
WT exp2 exp2 WT X30000.nM 49.918700 4.477121 32.75192 1.5241458 0.7978993 1.9101982
PARP1KO exp2 exp2 PARP1KO X30000.nM 67.054973 4.477121 100.21666 0.6691001 0.9093397 0.7358088
ALC1KO exp2 exp2 ALC1KO X30000.nM 122.686347 4.477121 116.46230 1.0534426 0.3000842 3.5104895
ALC1KOPARP1KO exp2 exp2 ALC1KOPARP1KO X30000.nM 6.578637 4.477121 22.54393 0.2918140 1.0537221 0.2769364
WT exp3 exp3 WT X30000.nM 84.335243 4.477121 54.49379 1.5476120 0.7978993 1.9396082
PARP1KO exp3 exp3 PARP1KO X30000.nM 83.422833 4.477121 58.56394 1.4244745 0.9093397 1.5664933
ALC1KO exp3 exp3 ALC1KO X30000.nM 156.706603 4.477121 146.96772 1.0662655 0.3000842 3.5532205
ALC1KOPARP1KO exp3 exp3 ALC1KOPARP1KO X30000.nM 33.340863 4.477121 34.61165 0.9632843 1.0537221 0.9141731

Plot Data

library(ggplot2)

# raw data
ggplot(dataset, aes(x=olaparib, y=Outcome)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE, aes(colour=genotype)) +
        geom_point(aes(colour=genotype, shape=experiment), size=2) +        
        facet_grid(. ~ genotype) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_shape_manual(values=15:20) +
        scale_color_manual(values=c("#000000","#000080","#808080","#800000"))

# norm
ggplot(dataset, aes(x=olaparib, y=NormOutcome)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE, aes(colour=genotype)) +
        geom_point(aes(colour=genotype, shape=experiment), size=2) +        
        facet_grid(. ~ genotype) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_shape_manual(values=15:20) +
        scale_color_manual(values=c("#000000","#000080","#808080","#800000"))

# norm2
ggplot(dataset, aes(x=olaparib, y=NormOutcome2)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE, aes(colour=genotype)) +
        geom_point(aes(colour=genotype, shape=experiment), size=2) +        
        facet_grid(. ~ genotype) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_shape_manual(values=15:20) +
        scale_color_manual(values=c("#000000","#000080","#808080","#800000"))

dataplot <- aggregate(NormOutcome2 ~ genotype+treatment, data = dataset, mean)
dataplot$se <- aggregate(NormOutcome2 ~ genotype+treatment, data = dataset, FUN = function(x){ sd(x)/sqrt(length(x))})$NormOutcome2
dataplot$treatment <- factor(gsub("X|.nM","", dataplot$treatment)) 

dataplot$genotype <- factor(dataplot$genotype, levels = c("WT","PARP1KO","ALC1KO","ALC1KOPARP1KO"))
dataplot$treatment <- relevel(dataplot$treatment, ref = "NT")


ggplot(dataplot, aes(x=treatment, y=NormOutcome2, fill = genotype)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_bar(stat="identity", position=position_dodge()) +
        geom_errorbar(aes(ymin=NormOutcome2-se, ymax=NormOutcome2+se),width=.2, position=position_dodge(.9)) +
        ylab(label = paste0("Relative ",expression("\u03B3"),"H2AX intensity")) +
        xlab(label = "Olaparib (nM)") +
        ylim(0, 6) +
        scale_fill_manual(values=c("#000000","#800000","#000080","#808080"))

library(Cairo)

cairo_pdf("Figure2C_v1.pdf", width = 8, height = 4, family = "Arial")

ggplot(dataplot, aes(x=treatment, y=NormOutcome2, fill = genotype)) + 
        theme_bw() +
        theme(panel.grid.major=element_blank(), panel.grid.minor=element_blank(), 
              axis.line = element_line(colour = "black"), text = element_text(size=14),
              panel.border = element_blank(), panel.background = element_blank()) +
        geom_bar(stat="identity", position=position_dodge()) +
        geom_errorbar(aes(ymin=NormOutcome2-se, ymax=NormOutcome2+se),width=.2, position=position_dodge(.9)) +
        ylab(label = paste0("Relative ",expression("\u03B3"),"H2AX intensity")) +
        xlab(label = "Olaparib (nM)") +
        ylim(0, 6) +
        scale_fill_manual(values=c("#000000","#800000","#000080","#808080"))

dev.off()
## quartz_off_screen 
##                 2
dataset$genotype <- factor(dataset$genotype, levels = c("WT","PARP1KO","ALC1KO","ALC1KOPARP1KO"))
dataset$treatment <- relevel(dataset$treatment, ref = "NT")
dataset$treatment <- factor(gsub("X|.nM","", dataset$treatment), levels =c("NT","30","300","3000","30000") ) 


cairo_pdf("Figure2C_v2.pdf", width = 8, height = 4, family = "Arial")

ggplot(dataplot, aes(x=treatment, y=NormOutcome2, fill = genotype)) + 
        theme_bw() +
        theme(panel.grid.major=element_blank(), panel.grid.minor=element_blank(), 
              axis.line = element_line(colour = "black"), text = element_text(size=14),
              panel.border = element_blank(), panel.background = element_blank()) +
        geom_bar(stat="identity", position=position_dodge()) +
        geom_bar(stat="identity", position=position_dodge(), colour="black") +
        ylab(label = paste0("Relative ",expression("\u03B3"),"H2AX intensity")) +
        xlab(label = "Olaparib (nM)") +
        ylim(0, 6) +
        scale_fill_manual(values=c("#00000080","#80000080","#00008080","#80808080")) +
        geom_jitter(data = dataset, cex=1, position=position_dodge(0.9),  aes(colour=genotype)) +
        scale_color_manual(values=c("#000000","#800000","#000080","#808080")) +
        geom_errorbar(aes(ymin=NormOutcome2-se, ymax=NormOutcome2+se),width=.2, position=position_dodge(.9)) 

dev.off()
## quartz_off_screen 
##                 2
cairo_pdf("Figure2C_v3.pdf", width = 8, height = 4, family = "Arial")

ggplot(dataset, aes(x=treatment, y=NormOutcome2, color=genotype)) + 
        theme_bw() +
        theme(panel.grid.major=element_blank(), panel.grid.minor=element_blank(), 
              axis.line = element_line(colour = "black"), text = element_text(size=14),
              panel.border = element_blank(), panel.background = element_blank()) +
        #geom_bar(stat="identity", position=position_dodge()) +
        geom_jitter(cex=1, position=position_dodge(1)) + 
        stat_summary(fun.data=mean_se, fun.args = list(mult=1), geom="errorbar", width=0.25, aes(colour=genotype), position=position_dodge(1)) +
        stat_summary(fun.y=mean, geom="crossbar", width=0.5, aes(colour=genotype), position=position_dodge(1)) +
        ylab(label = paste0("Relative ",expression("\u03B3"),"H2AX intensity")) +
        xlab(label = "Olaparib (nM)") +
        ylim(0, 6) +
        scale_fill_manual(values=c("#000000","#800000","#000080","#808080")) +
        scale_color_manual(values=c("#000000","#800000","#000080","#808080"))

dev.off()
## quartz_off_screen 
##                 2

Linear Model

library(MASS)
library(DHARMa)
library(lme4)
library(lmerTest)
library(bbmle)
fit1 <- lm(NormOutcome2 ~ olaparib*genotype, data = dataset)
print(summary(fit1))
## 
## Call:
## lm(formula = NormOutcome2 ~ olaparib * genotype, data = dataset)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.24699 -0.24173  0.03446  0.25248  1.07686 
## 
## Coefficients:
##                                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                      0.8226     0.2236   3.679 0.000556 ***
## olaparib                         0.1808     0.0786   2.301 0.025445 *  
## genotypePARP1KO                  0.3265     0.3162   1.033 0.306487    
## genotypeALC1KO                   0.8901     0.3162   2.815 0.006873 ** 
## genotypeALC1KOPARP1KO            0.2228     0.3162   0.705 0.484186    
## olaparib:genotypePARP1KO        -0.2016     0.1112  -1.814 0.075516 .  
## olaparib:genotypeALC1KO          0.4993     0.1112   4.491 3.97e-05 ***
## olaparib:genotypeALC1KOPARP1KO  -0.2213     0.1112  -1.991 0.051766 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4734 on 52 degrees of freedom
## Multiple R-squared:  0.8652, Adjusted R-squared:  0.847 
## F-statistic: 47.66 on 7 and 52 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit1))
## AIC:  89.94364
simres <- simulateResiduals(fittedModel = fit1)
plot(simres)

fit2 <- lm(NormOutcome2 ~ poly(olaparib,2)*genotype, data = dataset)
print(summary(fit2))
## 
## Call:
## lm(formula = NormOutcome2 ~ poly(olaparib, 2) * genotype, data = dataset)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.67569 -0.16602 -0.01959  0.13902  0.81110 
## 
## Coefficients:
##                                          Estimate Std. Error t value Pr(>|t|)
## (Intercept)                               1.25329    0.08562  14.638  < 2e-16
## poly(olaparib, 2)1                        2.17830    0.66321   3.284  0.00191
## poly(olaparib, 2)2                        1.23615    0.66321   1.864  0.06846
## genotypePARP1KO                          -0.15359    0.12109  -1.268  0.21075
## genotypeALC1KO                            2.07911    0.12109  17.171  < 2e-16
## genotypeALC1KOPARP1KO                    -0.30427    0.12109  -2.513  0.01539
## poly(olaparib, 2)1:genotypePARP1KO       -2.42823    0.93792  -2.589  0.01270
## poly(olaparib, 2)2:genotypePARP1KO       -1.60138    0.93792  -1.707  0.09422
## poly(olaparib, 2)1:genotypeALC1KO         6.01356    0.93792   6.412 5.88e-08
## poly(olaparib, 2)2:genotypeALC1KO        -6.09689    0.93792  -6.500 4.29e-08
## poly(olaparib, 2)1:genotypeALC1KOPARP1KO -2.66556    0.93792  -2.842  0.00656
## poly(olaparib, 2)2:genotypeALC1KOPARP1KO -1.69364    0.93792  -1.806  0.07723
##                                             
## (Intercept)                              ***
## poly(olaparib, 2)1                       ** 
## poly(olaparib, 2)2                       .  
## genotypePARP1KO                             
## genotypeALC1KO                           ***
## genotypeALC1KOPARP1KO                    *  
## poly(olaparib, 2)1:genotypePARP1KO       *  
## poly(olaparib, 2)2:genotypePARP1KO       .  
## poly(olaparib, 2)1:genotypeALC1KO        ***
## poly(olaparib, 2)2:genotypeALC1KO        ***
## poly(olaparib, 2)1:genotypeALC1KOPARP1KO ** 
## poly(olaparib, 2)2:genotypeALC1KOPARP1KO .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3316 on 48 degrees of freedom
## Multiple R-squared:  0.9389, Adjusted R-squared:  0.9249 
## F-statistic: 67.08 on 11 and 48 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit2))
## AIC:  50.42708
simres <- simulateResiduals(fittedModel = fit2)
plot(simres)

fit3 <- lm(NormOutcome2 ~ poly(olaparib,3)*genotype, data = dataset)
print(summary(fit3))
## 
## Call:
## lm(formula = NormOutcome2 ~ poly(olaparib, 3) * genotype, data = dataset)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.68893 -0.17760 -0.01805  0.16931  0.84585 
## 
## Coefficients:
##                                          Estimate Std. Error t value Pr(>|t|)
## (Intercept)                               1.25329    0.08458  14.818  < 2e-16
## poly(olaparib, 3)1                        2.17830    0.65516   3.325  0.00179
## poly(olaparib, 3)2                        1.23615    0.65516   1.887  0.06580
## poly(olaparib, 3)3                        0.14096    0.65516   0.215  0.83065
## genotypePARP1KO                          -0.15359    0.11962  -1.284  0.20585
## genotypeALC1KO                            2.07911    0.11962  17.382  < 2e-16
## genotypeALC1KOPARP1KO                    -0.30427    0.11962  -2.544  0.01456
## poly(olaparib, 3)1:genotypePARP1KO       -2.42823    0.92654  -2.621  0.01200
## poly(olaparib, 3)2:genotypePARP1KO       -1.60138    0.92654  -1.728  0.09094
## poly(olaparib, 3)3:genotypePARP1KO        1.23345    0.92654   1.331  0.18996
## poly(olaparib, 3)1:genotypeALC1KO         6.01356    0.92654   6.490 6.41e-08
## poly(olaparib, 3)2:genotypeALC1KO        -6.09689    0.92654  -6.580 4.73e-08
## poly(olaparib, 3)3:genotypeALC1KO        -0.48503    0.92654  -0.523  0.60326
## poly(olaparib, 3)1:genotypeALC1KOPARP1KO -2.66556    0.92654  -2.877  0.00617
## poly(olaparib, 3)2:genotypeALC1KOPARP1KO -1.69364    0.92654  -1.828  0.07435
## poly(olaparib, 3)3:genotypeALC1KOPARP1KO -0.58714    0.92654  -0.634  0.52957
##                                             
## (Intercept)                              ***
## poly(olaparib, 3)1                       ** 
## poly(olaparib, 3)2                       .  
## poly(olaparib, 3)3                          
## genotypePARP1KO                             
## genotypeALC1KO                           ***
## genotypeALC1KOPARP1KO                    *  
## poly(olaparib, 3)1:genotypePARP1KO       *  
## poly(olaparib, 3)2:genotypePARP1KO       .  
## poly(olaparib, 3)3:genotypePARP1KO          
## poly(olaparib, 3)1:genotypeALC1KO        ***
## poly(olaparib, 3)2:genotypeALC1KO        ***
## poly(olaparib, 3)3:genotypeALC1KO           
## poly(olaparib, 3)1:genotypeALC1KOPARP1KO ** 
## poly(olaparib, 3)2:genotypeALC1KOPARP1KO .  
## poly(olaparib, 3)3:genotypeALC1KOPARP1KO    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3276 on 44 degrees of freedom
## Multiple R-squared:  0.9454, Adjusted R-squared:  0.9267 
## F-statistic: 50.75 on 15 and 44 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit3))
## AIC:  51.74104
simres <- simulateResiduals(fittedModel = fit3)
plot(simres)

Compare Results

ICtab(fit1,fit2,
      fit3,
      base=T)
##      AIC  dAIC df
## fit2 50.4  0.0 13
## fit3 51.7  1.3 17
## fit1 89.9 39.5 9

Final Result

fit <- fit2

output <- coef(summary(fit))
output <- output[grep("olaparib", rownames(output)),]

rownames(output) <- gsub("poly\\(|, [1-3]\\)","", rownames(output) )
rownames(output) <- gsub("genotype",  paste0(" ",levels(dataset$genotype)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$genotype)[1],  sep = " in " )


# suggested result table
kable(output, row.names = T)
Estimate Std. Error t value Pr(>|t|)
olaparib1 in WT 2.178301 0.6632120 3.284471 0.0019121
olaparib2 in WT 1.236153 0.6632120 1.863888 0.0684602
olaparib1: WT vs. PARP1KO -2.428227 0.9379234 -2.588939 0.0127045
olaparib2: WT vs. PARP1KO -1.601379 0.9379234 -1.707367 0.0942155
olaparib1: WT vs. ALC1KO 6.013559 0.9379234 6.411567 0.0000001
olaparib2: WT vs. ALC1KO -6.096891 0.9379234 -6.500414 0.0000000
olaparib1: WT vs. ALC1KOPARP1KO -2.665563 0.9379234 -2.841984 0.0065634
olaparib2: WT vs. ALC1KOPARP1KO -1.693642 0.9379234 -1.805735 0.0772327
write.table(output, file = "Figure2C_Stats_Ref_WT.txt", quote = F, sep = "\t", row.names = T, col.names = NA)
# re-fit with ALC1KO reference
dataset$genotype <- relevel(dataset$genotype, ref = "ALC1KO")

fit <- lm(NormOutcome2 ~ poly(olaparib,2)*genotype, data = dataset)

output <- coef(summary(fit))
output <- output[grep("olaparib", rownames(output)),]

rownames(output) <- gsub("poly\\(|, [1-3]\\)","", rownames(output) )
rownames(output) <- gsub("genotype",  paste0(" ",levels(dataset$genotype)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$genotype)[1],  sep = " in " )


# suggested result table
kable(output, row.names = T)
Estimate Std. Error t value Pr(>|t|)
olaparib1 in ALC1KO 8.191859 0.6632120 12.351796 0.00e+00
olaparib2 in ALC1KO -4.860738 0.6632120 -7.329087 0.00e+00
olaparib1: ALC1KO vs. WT -6.013559 0.9379234 -6.411567 1.00e-07
olaparib2: ALC1KO vs. WT 6.096891 0.9379234 6.500414 0.00e+00
olaparib1: ALC1KO vs. PARP1KO -8.441785 0.9379234 -9.000506 0.00e+00
olaparib2: ALC1KO vs. PARP1KO 4.495512 0.9379234 4.793048 1.63e-05
olaparib1: ALC1KO vs. ALC1KOPARP1KO -8.679122 0.9379234 -9.253551 0.00e+00
olaparib2: ALC1KO vs. ALC1KOPARP1KO 4.403249 0.9379234 4.694679 2.26e-05
write.table(output, file = "Figure2C_Stats_Ref_ALC1KO.txt", quote = F, sep = "\t", row.names = T, col.names = NA)

ANOVA

fit2a <- lm(NormOutcome2 ~ poly(olaparib,2)*genotype, data = dataset)
fit2b <- lm(NormOutcome2 ~ poly(olaparib,2)+genotype, data = dataset)

anova(fit2a, fit2b)
## Analysis of Variance Table
## 
## Model 1: NormOutcome2 ~ poly(olaparib, 2) * genotype
## Model 2: NormOutcome2 ~ poly(olaparib, 2) + genotype
##   Res.Df     RSS Df Sum of Sq      F    Pr(>F)    
## 1     48  5.2782                                  
## 2     54 22.6547 -6   -17.377 26.337 1.282e-13 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

New analysis

dataset$genotype <- relevel(dataset$genotype, ref = "WT")


for(i in 2:length(levels(dataset$treatment))){
        
        dataset_sub <- dataset[dataset$treatment == levels(dataset$treatment)[i],]
        
        for(g in seq_along(levels(dataset_sub$genotype))){
                
                
                cat("Olaparib: ", levels(dataset$treatment)[i], "nM", "\n",
                    "Genotype: ", levels(dataset$genotype)[g], "\n")
                
                
                dataset_sub$genotype <- relevel(dataset_sub$genotype, ref = levels(dataset_sub$genotype)[g])

                fit_sub <- lm(NormOutcome2 ~ genotype, data = dataset_sub)
                
                print(summary(fit_sub))
                cat("AIC: ", AIC(fit_sub))
                
                
                simres <- simulateResiduals(fittedModel = fit_sub)
                plot(simres)
                
                if(i == 2 & g == 1){
                        output <- coef(summary(fit_sub))
                        output <- output[grep("genotype", rownames(output)),]
                        rownames(output) <- paste0(gsub("genotype",  paste0(" ",levels(dataset$genotype)[g], " vs. "), rownames(output)),
                                                   " in Olaparib ", levels(dataset$treatment)[i], "nM")
                } else {
                        outtmp <- coef(summary(fit_sub))
                        outtmp <- outtmp[grep("genotype", rownames(outtmp)),]
                        rownames(outtmp) <- paste0(gsub("genotype",  paste0(" ",levels(dataset$genotype)[g], " vs. "), rownames(outtmp)),
                                                   " in Olaparib ", levels(dataset$treatment)[i], "nM")
                        
                        output <- rbind(output,outtmp)
                        
                        if(g == length(levels(dataset_sub$genotype)) & i < length(levels(dataset$treatment))){
                                
                                output <- rbind(output, " ", colnames(output))
                        }
                }
                
        }
        
        
}
## Olaparib:  30 nM 
##  Genotype:  WT 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.33591 -0.24586  0.02992  0.24330  0.39102 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)            0.97592    0.17258   5.655 0.000479 ***
## genotypeALC1KO         2.23401    0.24407   9.153 1.64e-05 ***
## genotypePARP1KO        0.45500    0.24407   1.864 0.099284 .  
## genotypeALC1KOPARP1KO  0.01667    0.24407   0.068 0.947237    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2989 on 8 degrees of freedom
## Multiple R-squared:  0.9339, Adjusted R-squared:  0.9091 
## F-statistic: 37.69 on 3 and 8 DF,  p-value: 4.565e-05
## 
## AIC:  10.20702

## Olaparib:  30 nM 
##  Genotype:  ALC1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.33591 -0.24586  0.02992  0.24330  0.39102 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             3.2099     0.1726  18.600 7.20e-08 ***
## genotypeWT             -2.2340     0.2441  -9.153 1.64e-05 ***
## genotypePARP1KO        -1.7790     0.2441  -7.289 8.48e-05 ***
## genotypeALC1KOPARP1KO  -2.2173     0.2441  -9.085 1.73e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2989 on 8 degrees of freedom
## Multiple R-squared:  0.9339, Adjusted R-squared:  0.9091 
## F-statistic: 37.69 on 3 and 8 DF,  p-value: 4.565e-05
## 
## AIC:  10.20702

## Olaparib:  30 nM 
##  Genotype:  PARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.33591 -0.24586  0.02992  0.24330  0.39102 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.4309     0.1726   8.291 3.37e-05 ***
## genotypeALC1KO          1.7790     0.2441   7.289 8.48e-05 ***
## genotypeWT             -0.4550     0.2441  -1.864   0.0993 .  
## genotypeALC1KOPARP1KO  -0.4383     0.2441  -1.796   0.1102    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2989 on 8 degrees of freedom
## Multiple R-squared:  0.9339, Adjusted R-squared:  0.9091 
## F-statistic: 37.69 on 3 and 8 DF,  p-value: 4.565e-05
## 
## AIC:  10.20702

## Olaparib:  30 nM 
##  Genotype:  ALC1KOPARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.33591 -0.24586  0.02992  0.24330  0.39102 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      0.99259    0.17258   5.751 0.000428 ***
## genotypePARP1KO  0.43833    0.24407   1.796 0.110234    
## genotypeALC1KO   2.21735    0.24407   9.085 1.73e-05 ***
## genotypeWT      -0.01667    0.24407  -0.068 0.947237    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2989 on 8 degrees of freedom
## Multiple R-squared:  0.9339, Adjusted R-squared:  0.9091 
## F-statistic: 37.69 on 3 and 8 DF,  p-value: 4.565e-05
## 
## AIC:  10.20702

## Olaparib:  300 nM 
##  Genotype:  WT 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.67328 -0.07370  0.03119  0.19254  0.38571 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)            1.08982    0.19754   5.517 0.000562 ***
## genotypeALC1KO         2.99862    0.27936  10.734 4.99e-06 ***
## genotypePARP1KO       -0.02255    0.27936  -0.081 0.937650    
## genotypeALC1KOPARP1KO -0.13040    0.27936  -0.467 0.653115    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3421 on 8 degrees of freedom
## Multiple R-squared:  0.9572, Adjusted R-squared:  0.9412 
## F-statistic: 59.67 on 3 and 8 DF,  p-value: 8.101e-06
## 
## AIC:  13.44839

## Olaparib:  300 nM 
##  Genotype:  ALC1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.67328 -0.07370  0.03119  0.19254  0.38571 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             4.0884     0.1975   20.70 3.11e-08 ***
## genotypeWT             -2.9986     0.2794  -10.73 4.99e-06 ***
## genotypePARP1KO        -3.0212     0.2794  -10.81 4.72e-06 ***
## genotypeALC1KOPARP1KO  -3.1290     0.2794  -11.20 3.62e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3421 on 8 degrees of freedom
## Multiple R-squared:  0.9572, Adjusted R-squared:  0.9412 
## F-statistic: 59.67 on 3 and 8 DF,  p-value: 8.101e-06
## 
## AIC:  13.44839

## Olaparib:  300 nM 
##  Genotype:  PARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.67328 -0.07370  0.03119  0.19254  0.38571 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)            1.06727    0.19754   5.403 0.000644 ***
## genotypeALC1KO         3.02117    0.27936  10.815 4.72e-06 ***
## genotypeWT             0.02255    0.27936   0.081 0.937650    
## genotypeALC1KOPARP1KO -0.10785    0.27936  -0.386 0.709523    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3421 on 8 degrees of freedom
## Multiple R-squared:  0.9572, Adjusted R-squared:  0.9412 
## F-statistic: 59.67 on 3 and 8 DF,  p-value: 8.101e-06
## 
## AIC:  13.44839

## Olaparib:  300 nM 
##  Genotype:  ALC1KOPARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.67328 -0.07370  0.03119  0.19254  0.38571 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       0.9594     0.1975   4.857  0.00126 ** 
## genotypePARP1KO   0.1078     0.2794   0.386  0.70952    
## genotypeALC1KO    3.1290     0.2794  11.201 3.62e-06 ***
## genotypeWT        0.1304     0.2794   0.467  0.65311    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3421 on 8 degrees of freedom
## Multiple R-squared:  0.9572, Adjusted R-squared:  0.9412 
## F-statistic: 59.67 on 3 and 8 DF,  p-value: 8.101e-06
## 
## AIC:  13.44839

## Olaparib:  3000 nM 
##  Genotype:  WT 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.29187 -0.18368 -0.03196  0.17976  0.41146 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.3598     0.1578   8.615 2.55e-05 ***
## genotypeALC1KO          3.0475     0.2232  13.652 7.98e-07 ***
## genotypePARP1KO        -0.4917     0.2232  -2.203   0.0587 .  
## genotypeALC1KOPARP1KO  -0.3015     0.2232  -1.351   0.2137    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2734 on 8 degrees of freedom
## Multiple R-squared:  0.9767, Adjusted R-squared:  0.9679 
## F-statistic: 111.7 on 3 and 8 DF,  p-value: 7.203e-07
## 
## AIC:  8.064594

## Olaparib:  3000 nM 
##  Genotype:  ALC1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.29187 -0.18368 -0.03196  0.17976  0.41146 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             4.4074     0.1578   27.92 2.92e-09 ***
## genotypeWT             -3.0475     0.2232  -13.65 7.98e-07 ***
## genotypePARP1KO        -3.5393     0.2232  -15.86 2.51e-07 ***
## genotypeALC1KOPARP1KO  -3.3491     0.2232  -15.00 3.85e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2734 on 8 degrees of freedom
## Multiple R-squared:  0.9767, Adjusted R-squared:  0.9679 
## F-statistic: 111.7 on 3 and 8 DF,  p-value: 7.203e-07
## 
## AIC:  8.064594

## Olaparib:  3000 nM 
##  Genotype:  PARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.29187 -0.18368 -0.03196  0.17976  0.41146 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             0.8681     0.1578   5.500 0.000574 ***
## genotypeALC1KO          3.5393     0.2232  15.855 2.51e-07 ***
## genotypeWT              0.4917     0.2232   2.203 0.058737 .  
## genotypeALC1KOPARP1KO   0.1902     0.2232   0.852 0.418951    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2734 on 8 degrees of freedom
## Multiple R-squared:  0.9767, Adjusted R-squared:  0.9679 
## F-statistic: 111.7 on 3 and 8 DF,  p-value: 7.203e-07
## 
## AIC:  8.064594

## Olaparib:  3000 nM 
##  Genotype:  ALC1KOPARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.29187 -0.18368 -0.03196  0.17976  0.41146 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       1.0583     0.1578   6.705 0.000152 ***
## genotypePARP1KO  -0.1902     0.2232  -0.852 0.418951    
## genotypeALC1KO    3.3491     0.2232  15.003 3.85e-07 ***
## genotypeWT        0.3015     0.2232   1.351 0.213743    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2734 on 8 degrees of freedom
## Multiple R-squared:  0.9767, Adjusted R-squared:  0.9679 
## F-statistic: 111.7 on 3 and 8 DF,  p-value: 7.203e-07
## 
## AIC:  8.064594

## Olaparib:  30000 nM 
##  Genotype:  WT 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.45781 -0.39803  0.01569  0.20417  0.84873 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.8409     0.2732   6.739 0.000147 ***
## genotypeALC1KO          2.1154     0.3863   5.476 0.000590 ***
## genotypePARP1KO        -0.7087     0.3863  -1.835 0.103906    
## genotypeALC1KOPARP1KO  -1.1061     0.3863  -2.863 0.021041 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4731 on 8 degrees of freedom
## Multiple R-squared:  0.9119, Adjusted R-squared:  0.8789 
## F-statistic:  27.6 on 3 and 8 DF,  p-value: 0.000143
## 
## AIC:  21.22689

## Olaparib:  30000 nM 
##  Genotype:  ALC1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.45781 -0.39803  0.01569  0.20417  0.84873 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             3.9562     0.2732  14.484 5.05e-07 ***
## genotypeWT             -2.1154     0.3863  -5.476  0.00059 ***
## genotypePARP1KO        -2.8240     0.3863  -7.311 8.30e-05 ***
## genotypeALC1KOPARP1KO  -3.2215     0.3863  -8.339 3.23e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4731 on 8 degrees of freedom
## Multiple R-squared:  0.9119, Adjusted R-squared:  0.8789 
## F-statistic:  27.6 on 3 and 8 DF,  p-value: 0.000143
## 
## AIC:  21.22689

## Olaparib:  30000 nM 
##  Genotype:  PARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.45781 -0.39803  0.01569  0.20417  0.84873 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.1322     0.2732   4.145  0.00323 ** 
## genotypeALC1KO          2.8240     0.3863   7.311  8.3e-05 ***
## genotypeWT              0.7087     0.3863   1.835  0.10391    
## genotypeALC1KOPARP1KO  -0.3974     0.3863  -1.029  0.33366    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4731 on 8 degrees of freedom
## Multiple R-squared:  0.9119, Adjusted R-squared:  0.8789 
## F-statistic:  27.6 on 3 and 8 DF,  p-value: 0.000143
## 
## AIC:  21.22689

## Olaparib:  30000 nM 
##  Genotype:  ALC1KOPARP1KO 
## 
## Call:
## lm(formula = NormOutcome2 ~ genotype, data = dataset_sub)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.45781 -0.39803  0.01569  0.20417  0.84873 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       0.7347     0.2732   2.690   0.0275 *  
## genotypePARP1KO   0.3974     0.3863   1.029   0.3337    
## genotypeALC1KO    3.2215     0.3863   8.339 3.23e-05 ***
## genotypeWT        1.1061     0.3863   2.863   0.0210 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4731 on 8 degrees of freedom
## Multiple R-squared:  0.9119, Adjusted R-squared:  0.8789 
## F-statistic:  27.6 on 3 and 8 DF,  p-value: 0.000143
## 
## AIC:  21.22689

# suggested result table
kable(output, row.names = T)
Estimate Std. Error t value Pr(>|t|)
WT vs. ALC1KO in Olaparib 30nM 2.23401467145659 0.244066996853167 9.153284549982 1.63647502322034e-05
WT vs. PARP1KO in Olaparib 30nM 0.454996688324251 0.244066996853167 1.86422865111083 0.0992836079937305
WT vs. ALC1KOPARP1KO in Olaparib 30nM 0.0166654665999983 0.244066996853167 0.0682823438435818 0.947236691399539
ALC1KO vs. WT in Olaparib 30nM -2.23401467145659 0.244066996853167 -9.153284549982 1.63647502322033e-05
ALC1KO vs. PARP1KO in Olaparib 30nM -1.77901798313234 0.244066996853167 -7.28905589887117 8.47805458400702e-05
ALC1KO vs. ALC1KOPARP1KO in Olaparib 30nM -2.2173492048566 0.244066996853167 -9.08500220613842 1.72928582043792e-05
PARP1KO vs. ALC1KO in Olaparib 30nM 1.77901798313234 0.244066996853167 7.28905589887116 8.47805458400707e-05
PARP1KO vs. WT in Olaparib 30nM -0.454996688324251 0.244066996853167 -1.86422865111083 0.0992836079937302
PARP1KO vs. ALC1KOPARP1KO in Olaparib 30nM -0.438331221724253 0.244066996853167 -1.79594630726725 0.110233745608729
ALC1KOPARP1KO vs. PARP1KO in Olaparib 30nM 0.438331221724252 0.244066996853167 1.79594630726725 0.110233745608729
ALC1KOPARP1KO vs. ALC1KO in Olaparib 30nM 2.2173492048566 0.244066996853167 9.08500220613841 1.72928582043794e-05
ALC1KOPARP1KO vs. WT in Olaparib 30nM -0.0166654665999985 0.244066996853167 -0.0682823438435824 0.947236691399538
Estimate Std. Error t value Pr(>|t|)
WT vs. ALC1KO in Olaparib 300nM 2.99862474465302 0.279359527256207 10.7339269009534 4.99039951809161e-06
WT vs. PARP1KO in Olaparib 300nM -0.0225488104208594 0.279359527256207 -0.080716096001191 0.937650484949544
WT vs. ALC1KOPARP1KO in Olaparib 300nM -0.130395816857611 0.279359527256207 -0.466767030064529 0.653114521477612
ALC1KO vs. WT in Olaparib 300nM -2.99862474465302 0.279359527256207 -10.7339269009534 4.99039951809162e-06
ALC1KO vs. PARP1KO in Olaparib 300nM -3.02117355507389 0.279359527256207 -10.8146429969546 4.71648981626386e-06
ALC1KO vs. ALC1KOPARP1KO in Olaparib 300nM -3.12902056151064 0.279359527256207 -11.2006939310179 3.61876268369268e-06
PARP1KO vs. ALC1KO in Olaparib 300nM 3.02117355507388 0.279359527256207 10.8146429969546 4.71648981626387e-06
PARP1KO vs. WT in Olaparib 300nM 0.0225488104208593 0.279359527256207 0.0807160960011909 0.937650484949544
PARP1KO vs. ALC1KOPARP1KO in Olaparib 300nM -0.107847006436751 0.279359527256207 -0.386050934063337 0.709523006620542
ALC1KOPARP1KO vs. PARP1KO in Olaparib 300nM 0.107847006436751 0.279359527256207 0.386050934063337 0.709523006620542
ALC1KOPARP1KO vs. ALC1KO in Olaparib 300nM 3.12902056151064 0.279359527256207 11.2006939310179 3.61876268369267e-06
ALC1KOPARP1KO vs. WT in Olaparib 300nM 0.130395816857611 0.279359527256207 0.466767030064529 0.653114521477611
Estimate Std. Error t value Pr(>|t|)
WT vs. ALC1KO in Olaparib 3000nM 3.04754058178664 0.223223796352674 13.6524001095823 7.97659310937146e-07
WT vs. PARP1KO in Olaparib 3000nM -0.491717229051973 0.223223796352674 -2.20279933002798 0.0587369379418308
WT vs. ALC1KOPARP1KO in Olaparib 3000nM -0.301514965032195 0.223223796352674 -1.35072949192132 0.213742755890244
ALC1KO vs. WT in Olaparib 3000nM -3.04754058178663 0.223223796352675 -13.6524001095823 7.9765931093716e-07
ALC1KO vs. PARP1KO in Olaparib 3000nM -3.53925781083861 0.223223796352675 -15.8551994396103 2.50525637047875e-07
ALC1KO vs. ALC1KOPARP1KO in Olaparib 3000nM -3.34905554681883 0.223223796352675 -15.0031296015036 3.84720496457958e-07
PARP1KO vs. ALC1KO in Olaparib 3000nM 3.53925781083861 0.223223796352674 15.8551994396103 2.50525637047871e-07
PARP1KO vs. WT in Olaparib 3000nM 0.491717229051973 0.223223796352674 2.20279933002798 0.0587369379418306
PARP1KO vs. ALC1KOPARP1KO in Olaparib 3000nM 0.190202264019778 0.223223796352674 0.852069838106663 0.418950633286543
ALC1KOPARP1KO vs. PARP1KO in Olaparib 3000nM -0.190202264019778 0.223223796352674 -0.852069838106662 0.418950633286544
ALC1KOPARP1KO vs. ALC1KO in Olaparib 3000nM 3.34905554681883 0.223223796352674 15.0031296015037 3.84720496457951e-07
ALC1KOPARP1KO vs. WT in Olaparib 3000nM 0.301514965032195 0.223223796352674 1.35072949192132 0.213742755890244
Estimate Std. Error t value Pr(>|t|)
WT vs. ALC1KO in Olaparib 30000nM 2.11535269897002 0.386296014823517 5.47598892506422 0.000590250711051459
WT vs. PARP1KO in Olaparib 30000nM -0.708690088633984 0.386296014823517 -1.8345777886364 0.10390557266586
WT vs. ALC1KOPARP1KO in Olaparib 30000nM -1.10612544718416 0.386296014823517 -2.86341407816363 0.0210407342023467
ALC1KO vs. WT in Olaparib 30000nM -2.11535269897002 0.386296014823516 -5.47598892506421 0.000590250711051459
ALC1KO vs. PARP1KO in Olaparib 30000nM -2.824042787604 0.386296014823516 -7.31056671370062 8.30354874963266e-05
ALC1KO vs. ALC1KOPARP1KO in Olaparib 30000nM -3.22147814615418 0.386296014823517 -8.33940300322785 3.23405238481284e-05
PARP1KO vs. ALC1KO in Olaparib 30000nM 2.824042787604 0.386296014823517 7.31056671370062 8.30354874963269e-05
PARP1KO vs. WT in Olaparib 30000nM 0.708690088633983 0.386296014823517 1.8345777886364 0.10390557266586
PARP1KO vs. ALC1KOPARP1KO in Olaparib 30000nM -0.397435358550181 0.386296014823517 -1.02883628952722 0.333655624920083
ALC1KOPARP1KO vs. PARP1KO in Olaparib 30000nM 0.39743535855018 0.386296014823517 1.02883628952722 0.333655624920084
ALC1KOPARP1KO vs. ALC1KO in Olaparib 30000nM 3.22147814615418 0.386296014823517 8.33940300322784 3.23405238481286e-05
ALC1KOPARP1KO vs. WT in Olaparib 30000nM 1.10612544718416 0.386296014823517 2.86341407816363 0.0210407342023467
write.table(output, file = "Figure2C_Stats_New_All.txt", quote = F, sep = "\t", row.names = T, col.names = NA)